Computer software applications employ various data types to represent and store data. These data types may for example be base types (e.g. integer, character, or string), derived data types including user-defined types (e.g. records or arrays), or alternatively object-oriented types such as classes. The data types are typically implemented in a particular programming language for a particular platform. Such implementations are referred to as “native” date type instances, with the term “native” denoting programming language and platform dependency.
Occasionally it may be necessary or useful to map one native data type instance to a different native data type instance. Such mapping, for example, permits native data from legacy applications to be incorporated into new applications. In some cases, mapping may be desired between instances implemented in different programming languages (e.g. mapping of a Java™ integer to a COBOL string). In other cases, the desired mapping may be between instances that are both implemented in the same programming language but which differ in their structure (e.g. from one C structure representing an employee record into a different C structure representing a mailing address).
Most known approaches to mapping between native data type instances (or simply “mapping between native data types”, as it is sometimes referred to) map directly from a source data type to a target data type. For example, code is written to map directly from, e.g., one C structure to another, or to map directly from a Java™ integer to a COBOL string. If it later becomes necessary to map either of the source or target native data types to a third native data type, the code may not be suited to such mapping due the fact that it is “hard-coded” to the source and target native data types. The direct mapping approach is thus highly customized to a particular problem and fails to anticipate the possible need for mapping into different native types in the future or to facilitate same.
What is needed is a solution which addresses, at least in part, these or other shortcomings.